import java.util.ArrayList;
import java.util.List;

class Solution {
    public List<List<Integer>> generate(int numRows) {
        List<List<Integer>> row = new ArrayList<>();
        List<Integer> ret = new ArrayList<>();
        ret.add(1);
        row.add(ret);
        for (int i = 1; i < numRows; i++) {
            List<Integer> curRet = new ArrayList<>();
            curRet.add(1);

            for (int j = 1; j < i; j++) {
                int x = row.get(i - 1).get(j) + row.get(i - 1).get(j - 1);
                curRet.add(x);
            }

            curRet.add(1);

            row.add(curRet);
        }

        return row;
    }
}